//1.引入axios
import axios from "axios"
import { getToken } from "./authToken";
import router from "@/router";
// 创建一个axios
var http = axios.create({
    baseURL:process.env.VUE_APP_BASE_URL,
    timeout:5000 //设置请求超时的时间
});

// 设置请求拦截器，统一设置一些请求头
http.interceptors.request.use(config=>{
    // 有数据就将token带过去
    if(getToken()){
        config.headers["ecard_token"] = getToken();
    }
    return config;
})

// 创建响应拦截器，做一些统一的错误处理
http.interceptors.response.use(
    res =>{
        if(res.data.code == 403){
            alert(res.data.msg)
            if(router.history.current.path != '/login'){
                router.push("/login")
            }
            return false
        }else{
            return res.data
        }
    },
    err =>{
        if(err.request.status == 404){
            // 代表服务器给你返回的是404
            alert("您要请求的资源不存在")
            return
        }
        if(err.request.status == 500){
            alert("服务器出错，请稍后重试")
            return
        }
        if(err.request.status == 403){
            alert("无操作权限")
            return
        }
    }
)

// 导出
export default http